## forced choice
load("FC-Adolescent-Merged.RData")
setwd("D:/FC_Project_Full/FC-Adolescent/Raw Data/Analyses")
library(thurstonianIRT)
library(dplyr)
library(tidyr)
library(psych)
source("Utilities.R")
data_A <- readxl::read_excel("Student_Data.xlsx", sheet = "A")
data_B <- readxl::read_excel("Student_Data.xlsx", sheet = "B")
apply(data_A %>% select(GRADE_RECODE, FATHER_EDU, MOTHER_EDU, SLEEP_QLT:SWB5, -(DEM_3:DEM_4)), 2, table)
apply(data_B %>% select(GRADE_RECODE, FATHER_EDU, MOTHER_EDU, SLEEP_QLT:SWB5, -(DEM_3:DEM_4)), 2, table)
#### Columns used for mutation - use the FIRST option endorsed
## data_A: FATHER_EDU, MOTHER_EDU, SLEEP_QLT:FC20_LEAST, BFI1:SWB5
## data_B: FATHER_EDU, MOTHER_EDU, SLEEP_QLT:BFI60, FC1_MOST:SWB5
# Make sure that we don't get weird characters in the mutated dataset
# apply(data_A %>% mutate(across(c(FATHER_EDU, MOTHER_EDU, SLEEP_QLT:FC20_LEAST, BFI1:SWB5), ~ substr(.x, 1, 1))) %>%
#         select(c(FATHER_EDU, MOTHER_EDU, SLEEP_QLT:FC20_LEAST, BFI1:SWB5)), 2, table)
# apply(data_B %>% mutate(across(c(FATHER_EDU, MOTHER_EDU, SLEEP_QLT:BFI60, FC1_MOST:SWB5), ~ substr(.x, 1, 1))) %>%
#         select(c(FATHER_EDU, MOTHER_EDU, SLEEP_QLT:BFI60, FC1_MOST:SWB5)), 2, table)
data_A <- data_A %>% mutate(across(c(FATHER_EDU, MOTHER_EDU, SLEEP_QLT:FC20_LEAST, BFI1:SWB5), ~ substr(.x, 1, 1)))
data_B <- data_B %>% mutate(across(c(FATHER_EDU, MOTHER_EDU, SLEEP_QLT:BFI60, FC1_MOST:SWB5), ~ substr(.x, 1, 1)))
# Filter out unreasonable results
### FC Measures: Anything other than A/B/C -> NA
data_A <- data_A %>% mutate(across(c(FC1_MOST:FC20_LEAST), ~ ifelse(.x %in% c("A","B","C"), .x, NA)))
data_B <- data_B %>% mutate(across(c(FC1_MOST:FC20_LEAST), ~ ifelse(.x %in% c("A","B","C"), .x, NA)))
### Likert Measures: Response out of Likert range -> NA
data_A <- data_A %>% mutate(across(c(BFI1:SWB5), ~ ifelse(.x == 6, NA, .x)))
data_B <- data_B %>% mutate(across(c(BFI1:BFI60,DB1:SWB5), ~ ifelse(.x == 6, NA, .x)))
data_A <- data_A %>% mutate(across(c(LN1:LN3), ~ ifelse(.x == 4, NA, .x)))
data_B <- data_B %>% mutate(across(c(LN1:LN3), ~ ifelse(.x == 4, NA, .x)))
### Drop GPA column
data_A <- data_A %>% select(-GPA)
data_B <- data_B %>% select(-GPA)
range(colSums((!is.na(data_A))))  # 776 participants, N = 754 - 773 (515 for academic performance)
range(colSums((!is.na(data_B))))  # 886 participants, N = 868 - 886 (577 for academic performance)
### Failing both QC items
data_A$QC_CHECK <- (data_A$BUQC2 == 4) + (data_A$BFIQC1 == 4)
data_B$QC_CHECK <- (data_B$BUQC2 == 4) + (data_B$BFIQC1 == 4)
data_A$QC+
d
data_A$QC_CHECK
table(data_A$QC_CHECK)
table(data_B$QC_CHECK)
mean(as.numeric(unlist(c(
data_A %>% filter(GRADE_RECODE %in% c(5, 6)) %>% select(AGE),
data_B %>% filter(GRADE_RECODE %in% c(5, 6)) %>% select(AGE)
))), na.rm = TRUE)
sd(as.numeric(unlist(c(
data_A %>% filter(GRADE_RECODE %in% c(5, 6)) %>% select(AGE),
data_B %>% filter(GRADE_RECODE %in% c(5, 6)) %>% select(AGE)
))), na.rm = TRUE)
mean(as.numeric(unlist(c(
data_A %>% filter(GRADE_RECODE %in% c(7, 8)) %>% select(GENDER),
data_B %>% filter(GRADE_RECODE %in% c(7, 8)) %>% select(GENDER)
))), na.rm = TRUE)
mean(as.numeric(unlist(c(
data_A %>% filter(GRADE_RECODE %in% c(10, 11)) %>% select(GENDER),
data_B %>% filter(GRADE_RECODE %in% c(10, 11)) %>% select(GENDER)
))), na.rm = TRUE)
### Failing FC responses (IF MOST = LEAST)
for (i in 1:20) {
data_A[paste0("FC",i,"_CHECK")] <- data_A[paste0("FC",i,"_MOST")] == data_A[paste0("FC",i,"_LEAST")]
data_B[paste0("FC",i,"_CHECK")] <- data_B[paste0("FC",i,"_MOST")] == data_B[paste0("FC",i,"_LEAST")]
}
data_A$FC_RESP_CHECK <- rowSums(data_A %>% select(FC1_CHECK:FC20_CHECK), na.rm = TRUE)
data_B$FC_RESP_CHECK <- rowSums(data_B %>% select(FC1_CHECK:FC20_CHECK), na.rm = TRUE)
data_A$FC_NA_RESPS <- rowSums(is.na(data_A %>% select(FC1_MOST:FC20_LEAST)), na.rm = TRUE)
data_B$FC_NA_RESPS <- rowSums(is.na(data_B %>% select(FC1_MOST:FC20_LEAST)), na.rm = TRUE)
### Filter out: Failing both QC or having MOST = LEAST on FC
### Oops. We also need to take out incomplete responses for FC.
data_A_new <- data_A %>% filter(QC_CHECK >= 1 & FC_RESP_CHECK == 0 & FC_NA_RESPS == 0)  # 652/776
data_B_new <- data_B %>% filter(QC_CHECK >= 1 & FC_RESP_CHECK == 0 & FC_NA_RESPS == 0)  # 780/886
### Convert FC responses to numbers
data_A_new <- data_A_new %>% mutate(across(FC1_MOST:FC20_LEAST, ~recode(., "A" = 1, "B" = 2, "C" = 3)))
data_B_new <- data_B_new %>% mutate(across(FC1_MOST:FC20_LEAST, ~recode(., "A" = 1, "B" = 2, "C" = 3)))
temp_index <- colnames(data_A_new)[grep("FC[0-9]",colnames(data_A_new))]
temp_A <- sapply(seq(1, 40, by = 2),
function(i) mapply(graded_responses, data_A_new[temp_index][,i,drop = TRUE],
data_A_new[temp_index][,i+1,drop = TRUE], n = 3))
temp_B <- sapply(seq(1, 40, by = 2),
function(i) mapply(graded_responses, data_B_new[temp_index][,i,drop = TRUE],
data_B_new[temp_index][,i+1,drop = TRUE], n = 3))
temp_A <- as.data.frame(temp_A)
temp_B <- as.data.frame(temp_B)
TIRT_A <- data.frame()
for (i in 1:ncol(temp_A)) {
result <- separate(temp_A[,i,drop = FALSE],
col = 1,
sep = ",",
into = paste0("FC",i,"_",c("AB","AC","BC")))
if (nrow(TIRT_A) == 0) {
TIRT_A  <- result
}
else {
TIRT_A <- cbind(TIRT_A, result)
}
}
TIRT_B <- data.frame()
for (i in 1:ncol(temp_B)) {
result <- separate(temp_B[,i,drop = FALSE],
col = 1,
sep = ",",
into = paste0("FC",i,"_",c("AB","AC","BC")))
if (nrow(TIRT_B) == 0) {
TIRT_B <- result
}
else {
TIRT_B <- cbind(TIRT_B, result)
}
}
data_A_new <- cbind(data_A_new, TIRT_A)
data_B_new <- cbind(data_B_new, TIRT_B)
nrow(data_A_new)
nrow(data_B_new)
data_A_new <- data_A_new %>% mutate(across(c(FATHER_EDU:SCHOOL_SAT,BFI1:SWB5), ~as.numeric(.)))
data_B_new <- data_B_new %>% mutate(across(c(FATHER_EDU:BFI60,DB1:SWB5), ~as.numeric(.)))
data_A_new <- data_A_new %>% mutate(BFI27R = 6 - BFI27, BFI48R = 6 - BFI48, BFI52R = 6 - BFI52, BFI59R = 6 - BFI59,
BFI18R = 6 - BFI18, BFI28R = 6 - BFI28, BFI39R = 6 - BFI39, BFI49R = 6 - BFI49,
BFI17R = 6 - BFI17, BFI19R = 6 - BFI19, BFI24R = 6 - BFI24, BFI37R = 6 - BFI37,
BFI1R = 6 - BFI1, BFI6R = 6 - BFI6, BFI34R = 6 - BFI34, BFI47R = 6 - BFI47,
BFI7R = 6 - BFI7, BFI36R = 6 - BFI36, BFI54R = 6 - BFI54, BFI55R = 6 - BFI55)
data_A_new <- data_A_new %>% mutate(SS_A = rowMeans(select(., c(BFI4, BFI9, BFI13, BFI21, BFI32, BFI35, BFI40, BFI50, BFI27R, BFI48R, BFI52R, BFI59R)), na.rm = TRUE),
SS_C = rowMeans(select(., c(BFI5, BFI10, BFI22, BFI33, BFI41, BFI46, BFI56, BFI58, BFI18R, BFI28R, BFI39R, BFI49R)), na.rm = TRUE),
SS_E = rowMeans(select(., c(BFI2, BFI8, BFI15, BFI30, BFI31, BFI43, BFI53, BFI60, BFI17R, BFI19R, BFI24R, BFI37R)), na.rm = TRUE),
SS_N = rowMeans(select(., c(BFI12, BFI14, BFI20, BFI26, BFI29, BFI38, BFI45, BFI57, BFI1R, BFI6R, BFI34R, BFI47R)), na.rm = TRUE),
SS_O = rowMeans(select(., c(BFI3, BFI11, BFI16, BFI23, BFI25, BFI42, BFI44, BFI51, BFI7R, BFI36R, BFI54R, BFI55R)), na.rm = TRUE),
DB = rowMeans(select(., DB1:DB10), na.rm = TRUE),
BU = rowMeans(select(., c(BU1:BU7,BU8:BU9)), na.rm = TRUE),
VOB = rowMeans(select(., VoB1:VoB7), na.rm = TRUE),
G_APP = rowMeans(select(., AG1:AG3), na.rm = TRUE),
M_AVD = rowMeans(select(., AG4:AG6), na.rm = TRUE),
M_APP = rowMeans(select(., AG7:AG9), na.rm = TRUE),
G_AVD = rowMeans(select(., AG10:AG12), na.rm = TRUE),
EI_A = rowMeans(select(., EI1:EI4), na.rm = TRUE),
EI_B = rowMeans(select(., EI5:EI8), na.rm = TRUE),
EI_C = rowMeans(select(., EI9:EI12), na.rm = TRUE),
EI_D = rowMeans(select(., EI13:EI16), na.rm = TRUE),
LN = rowMeans(select(., LN1:LN3), na.rm = TRUE),
SWB = rowMeans(select(., SWB1:SWB5), na.rm = TRUE))
data_B_new <- data_B_new %>% mutate(BFI27R = 6 - BFI27, BFI48R = 6 - BFI48, BFI52R = 6 - BFI52, BFI59R = 6 - BFI59,
BFI18R = 6 - BFI18, BFI28R = 6 - BFI28, BFI39R = 6 - BFI39, BFI49R = 6 - BFI49,
BFI17R = 6 - BFI17, BFI19R = 6 - BFI19, BFI24R = 6 - BFI24, BFI37R = 6 - BFI37,
BFI1R = 6 - BFI1, BFI6R = 6 - BFI6, BFI34R = 6 - BFI34, BFI47R = 6 - BFI47,
BFI7R = 6 - BFI7, BFI36R = 6 - BFI36, BFI54R = 6 - BFI54, BFI55R = 6 - BFI55)
data_B_new <- data_B_new %>% mutate(SS_A = rowMeans(select(., c(BFI4, BFI9, BFI13, BFI21, BFI32, BFI35, BFI40, BFI50, BFI27R, BFI48R, BFI52R, BFI59R)), na.rm = TRUE),
SS_C = rowMeans(select(., c(BFI5, BFI10, BFI22, BFI33, BFI41, BFI46, BFI56, BFI58, BFI18R, BFI28R, BFI39R, BFI49R)), na.rm = TRUE),
SS_E = rowMeans(select(., c(BFI2, BFI8, BFI15, BFI30, BFI31, BFI43, BFI53, BFI60, BFI17R, BFI19R, BFI24R, BFI37R)), na.rm = TRUE),
SS_N = rowMeans(select(., c(BFI12, BFI14, BFI20, BFI26, BFI29, BFI38, BFI45, BFI57, BFI1R, BFI6R, BFI34R, BFI47R)), na.rm = TRUE),
SS_O = rowMeans(select(., c(BFI3, BFI11, BFI16, BFI23, BFI25, BFI42, BFI44, BFI51, BFI7R, BFI36R, BFI54R, BFI55R)), na.rm = TRUE),
DB = rowMeans(select(., DB1:DB10), na.rm = TRUE),
BU = rowMeans(select(., c(BU1:BU7,BU8:BU9)), na.rm = TRUE),
VOB = rowMeans(select(., VoB1:VoB7), na.rm = TRUE),
G_APP = rowMeans(select(., AG1:AG3), na.rm = TRUE),
M_AVD = rowMeans(select(., AG4:AG6), na.rm = TRUE),
M_APP = rowMeans(select(., AG7:AG9), na.rm = TRUE),
G_AVD = rowMeans(select(., AG10:AG12), na.rm = TRUE),
EI_A = rowMeans(select(., EI1:EI4), na.rm = TRUE),
EI_B = rowMeans(select(., EI5:EI8), na.rm = TRUE),
EI_C = rowMeans(select(., EI9:EI12), na.rm = TRUE),
EI_D = rowMeans(select(., EI13:EI16), na.rm = TRUE),
LN = rowMeans(select(., LN1:LN3), na.rm = TRUE),
SWB = rowMeans(select(., SWB1:SWB5), na.rm = TRUE))
### Let's see whether we can justify merging data
data_A_PRI <- data_A_new %>% filter(GRADE_RECODE %in% c(5,6))
data_A_JUN <- data_A_new %>% filter(GRADE_RECODE %in% c(7,8))
data_A_SEN <- data_A_new %>% filter(GRADE_RECODE %in% c(10,11))
data_B_PRI <- data_B_new %>% filter(GRADE_RECODE %in% c(5,6))
data_B_JUN <- data_B_new %>% filter(GRADE_RECODE %in% c(7,8))
data_B_SEN <- data_B_new %>% filter(GRADE_RECODE %in% c(10,11))
var_names <- colnames(data_A_new %>% select(SS_A:SWB))
for (nm in var_names) {
print(nm)
dt_A <- data_A_PRI[nm]
dt_B <- data_B_PRI[nm]
# print(t.test(data_A, data_B))
print(paste0("p-value:",round(t.test(dt_A, dt_B)$p.value, 3)))
}
for (nm in var_names) {
print(nm)
dt_A <- data_A_JUN[nm]
dt_B <- data_B_JUN[nm]
# print(t.test(data_A, data_B))
print(paste0("p-value:",round(t.test(dt_A, dt_B)$p.value, 3)))
}
for (nm in var_names) {
print(nm)
dt_A <- data_A_SEN[nm]
dt_B <- data_B_SEN[nm]
# print(t.test(data_A, data_B))
print(paste0("p-value:",round(t.test(dt_A, dt_B)$p.value, 3)))
}
data_B_new <- data_B_new %>% select(colnames(data_A_new))
data_new <- rbind(data_A_new, data_B_new)
data_new$ACADEMIC_SCORE_CORRECTED <- as.numeric(data_new$ACADEMIC_SCORE_CORRECTED)
data_new <- data_new %>% group_by(GRADE_RECODE) %>% mutate(STD_ACADEMIC = scale(ACADEMIC_SCORE_CORRECTED)) %>% ungroup()
data_new_PRI <- data_new %>% filter(GRADE_RECODE %in% c(5,6))
data_new_JUN <- data_new %>% filter(GRADE_RECODE %in% c(7,8))
data_new_SEN <- data_new %>% filter(GRADE_RECODE %in% c(10,11))
psych::describe(as.numeric(data_new_PRI$AGE))
mean(as.numeric(data_new_PRI$GENDER), na.rm = TRUE)
psych::describe(as.numeric(data_new_JUN$AGE))
mean(as.numeric(data_new_JUN$GENDER), na.rm = TRUE)
psych::describe(as.numeric(data_new_SEN$AGE))
mean(as.numeric(data_new_SEN$GENDER), na.rm = TRUE)
apaTables::apa.cor.table(data_new_PRI %>% select(SS_A, SS_C, SS_E, SS_N, SS_O,
DB, BU, VOB, G_APP, M_AVD, M_APP, G_AVD,
EI_A, EI_B, EI_C, EI_D,
LN, SWB, SLEEP_QLT, STD_ACADEMIC, AGE, GENDER,
FATHER_EDU, MOTHER_EDU), filename = "Cor_FifthSixthGraders.doc")
apaTables::apa.cor.table(data_new_JUN %>% select(SS_A, SS_C, SS_E, SS_N, SS_O,
DB, BU, VOB, G_APP, M_AVD, M_APP, G_AVD,
EI_A, EI_B, EI_C, EI_D,
LN, SWB, SLEEP_QLT, STD_ACADEMIC, AGE, GENDER,
FATHER_EDU, MOTHER_EDU), filename = "Cor_SeventhEighthGraders.doc")
apaTables::apa.cor.table(data_new_SEN %>% select(SS_A, SS_C, SS_E, SS_N, SS_O,
DB, BU, VOB, G_APP, M_AVD, M_APP, G_AVD,
EI_A, EI_B, EI_C, EI_D,
LN, SWB, SLEEP_QLT, STD_ACADEMIC, AGE, GENDER,
FATHER_EDU, MOTHER_EDU), filename = "Cor_TenthEleventhGraders.doc")
#
#
#
sequences <- read.csv("sequence.csv")
BFI_info <- readxl::read_excel("Mapping_BFI.xlsx")
data_new <- data_new %>% filter(!is.na(GRADE_RECODE))
BFI_info
build_var_names <- function(item_name = "i", block_size = 3, N_blocks = 20, format = "pairwise") {
if (format == "ranks") {
return(paste0(item_name, c(1:(block_size * N_blocks))))
}
else if (format == "pairwise") {
temp_seq <- matrix(paste0(item_name, c(1:(block_size * N_blocks))), ncol = block_size, byrow = TRUE)
temp_seq_2 <- matrix(c(apply(temp_seq, 1, combn, 2)), ncol = 2, byrow = TRUE)
return(paste0(temp_seq_2[,1], temp_seq_2[,2]))
}
}
default_varnames <- build_var_names()
default_varnames_emp <- build_var_names("")
threshold_varnames <- paste0("[",default_varnames,"$1](t", default_varnames_emp,");")
summary(alpha(data_PRI %>% select(c(BFI4, BFI9, BFI13, BFI21, BFI32, BFI35, BFI40, BFI50, BFI27R, BFI48R, BFI52R, BFI59R))))
summary(alpha(data_PRI %>% select(c(BFI5, BFI10, BFI22, BFI33, BFI41, BFI46, BFI56, BFI58, BFI18R, BFI28R, BFI39R, BFI49R))))
summary(alpha(data_PRI %>% select(c(BFI2, BFI8, BFI15, BFI30, BFI31, BFI43, BFI53, BFI60, BFI17R, BFI19R, BFI24R, BFI37R))))
summary(alpha(data_PRI %>% select(c(BFI12, BFI14, BFI20, BFI26, BFI29, BFI38, BFI45, BFI57, BFI1R, BFI6R, BFI34R, BFI47R))))
summary(alpha(data_PRI %>% select(c(BFI3, BFI11, BFI16, BFI23, BFI25, BFI42, BFI44, BFI51, BFI7R, BFI36R, BFI54R, BFI55R))))
summary(alpha(data_JUN %>% select(c(BFI4, BFI9, BFI13, BFI21, BFI32, BFI35, BFI40, BFI50, BFI27R, BFI48R, BFI52R, BFI59R))))
summary(alpha(data_JUN %>% select(c(BFI5, BFI10, BFI22, BFI33, BFI41, BFI46, BFI56, BFI58, BFI18R, BFI28R, BFI39R, BFI49R))))
summary(alpha(data_JUN %>% select(c(BFI2, BFI8, BFI15, BFI30, BFI31, BFI43, BFI53, BFI60, BFI17R, BFI19R, BFI24R, BFI37R))))
summary(alpha(data_JUN %>% select(c(BFI12, BFI14, BFI20, BFI26, BFI29, BFI38, BFI45, BFI57, BFI1R, BFI6R, BFI34R, BFI47R))))
summary(alpha(data_JUN %>% select(c(BFI3, BFI11, BFI16, BFI23, BFI25, BFI42, BFI44, BFI51, BFI7R, BFI36R, BFI54R, BFI55R))))
summary(alpha(data_SEN %>% select(c(BFI4, BFI9, BFI13, BFI21, BFI32, BFI35, BFI40, BFI50, BFI27R, BFI48R, BFI52R, BFI59R))))
summary(alpha(data_SEN %>% select(c(BFI5, BFI10, BFI22, BFI33, BFI41, BFI46, BFI56, BFI58, BFI18R, BFI28R, BFI39R, BFI49R))))
summary(alpha(data_SEN %>% select(c(BFI2, BFI8, BFI15, BFI30, BFI31, BFI43, BFI53, BFI60, BFI17R, BFI19R, BFI24R, BFI37R))))
summary(alpha(data_SEN %>% select(c(BFI12, BFI14, BFI20, BFI26, BFI29, BFI38, BFI45, BFI57, BFI1R, BFI6R, BFI34R, BFI47R))))
summary(alpha(data_SEN %>% select(c(BFI3, BFI11, BFI16, BFI23, BFI25, BFI42, BFI44, BFI51, BFI7R, BFI36R, BFI54R, BFI55R))))
#
# summary(alpha(data_B_JUN %>% select(c(BFI12, BFI14, BFI20, BFI26, BFI29, BFI38, BFI45, BFI57, BFI1R, BFI6R, BFI34R, BFI47R))))
# summary(alpha(data_B_JUN %>% select(c(BFI3, BFI11, BFI16, BFI23, BFI25, BFI42, BFI44, BFI51, BFI7R, BFI36R, BFI54R, BFI55R))))
#
# summary(alpha(data_B_SEN %>% select(c(BFI4, BFI9, BFI13, BFI21, BFI32, BFI35, BFI40, BFI50, BFI27R, BFI48R, BFI52R, BFI59R))))
# summary(alpha(data_B_SEN %>% select(c(BFI5, BFI10, BFI22, BFI33, BFI41, BFI46, BFI56, BFI58, BFI18R, BFI28R, BFI39R, BFI49R))))
# summary(alpha(data_B_SEN %>% select(c(BFI2, BFI8, BFI15, BFI30, BFI31, BFI43, BFI53, BFI60, BFI17R, BFI19R, BFI24R, BFI37R))))
# summary(alpha(data_B_SEN %>% select(c(BFI12, BFI14, BFI20, BFI26, BFI29, BFI38, BFI45, BFI57, BFI1R, BFI6R, BFI34R, BFI47R))))
# summary(alpha(data_B_SEN %>% select(c(BFI3, BFI11, BFI16, BFI23, BFI25, BFI42, BFI44, BFI51, BFI7R, BFI36R, BFI54R, BFI55R))))
#
#
c((alpha(data_PRI %>% select(DB1:DB10)))$total$raw_alpha
,(alpha(data_PRI %>% select(BU1:BU7,BU8:BU9)))$total$raw_alpha
,(alpha(data_PRI %>% select(VoB1:VoB7)))$total$raw_alpha
,(alpha(data_PRI %>% select(AG1:AG3)))$total$raw_alpha
,(alpha(data_PRI %>% select(AG4:AG6)))$total$raw_alpha
,(alpha(data_PRI %>% select(AG7:AG9)))$total$raw_alpha
,(alpha(data_PRI %>% select(AG10:AG12)))$total$raw_alpha
,(alpha(data_PRI %>% select(EI1:EI4)))$total$raw_alpha
,(alpha(data_PRI %>% select(EI5:EI8)))$total$raw_alpha
,(alpha(data_PRI %>% select(EI9:EI12)))$total$raw_alpha
,(alpha(data_PRI %>% select(EI13:EI16)))$total$raw_alpha
,(alpha(data_PRI %>% select(LN1:LN3)))$total$raw_alpha
,(alpha(data_PRI %>% select(SWB1:SWB5)))$total$raw_alpha)
omega(data_PRI %>% select(DB1:DB10))
DKNYP <- omega(data_PRI %>% select(DB1:DB10))
DKNYP$omega_h
DKNYP$omega.lim
DKNYP$alpha
# summary(alpha(data_B_JUN %>% select(c(BFI12, BFI14, BFI20, BFI26, BFI29, BFI38, BFI45, BFI57, BFI1R, BFI6R, BFI34R, BFI47R))))
# summary(alpha(data_B_JUN %>% select(c(BFI3, BFI11, BFI16, BFI23, BFI25, BFI42, BFI44, BFI51, BFI7R, BFI36R, BFI54R, BFI55R))))
#
# summary(alpha(data_B_SEN %>% select(c(BFI4, BFI9, BFI13, BFI21, BFI32, BFI35, BFI40, BFI50, BFI27R, BFI48R, BFI52R, BFI59R))))
# summary(alpha(data_B_SEN %>% select(c(BFI5, BFI10, BFI22, BFI33, BFI41, BFI46, BFI56, BFI58, BFI18R, BFI28R, BFI39R, BFI49R))))
# summary(alpha(data_B_SEN %>% select(c(BFI2, BFI8, BFI15, BFI30, BFI31, BFI43, BFI53, BFI60, BFI17R, BFI19R, BFI24R, BFI37R))))
# summary(alpha(data_B_SEN %>% select(c(BFI12, BFI14, BFI20, BFI26, BFI29, BFI38, BFI45, BFI57, BFI1R, BFI6R, BFI34R, BFI47R))))
# summary(alpha(data_B_SEN %>% select(c(BFI3, BFI11, BFI16, BFI23, BFI25, BFI42, BFI44, BFI51, BFI7R, BFI36R, BFI54R, BFI55R))))
#
#
c((alpha(data_PRI %>% select(DB1:DB10)))$total$raw_alpha
,(alpha(data_PRI %>% select(BU1:BU7,BU8:BU9)))$total$raw_alpha
,(alpha(data_PRI %>% select(VoB1:VoB7)))$total$raw_alpha
,(alpha(data_PRI %>% select(AG1:AG3)))$total$raw_alpha
,(alpha(data_PRI %>% select(AG4:AG6)))$total$raw_alpha
,(alpha(data_PRI %>% select(AG7:AG9)))$total$raw_alpha
,(alpha(data_PRI %>% select(AG10:AG12)))$total$raw_alpha
,(alpha(data_PRI %>% select(EI1:EI4)))$total$raw_alpha
,(alpha(data_PRI %>% select(EI5:EI8)))$total$raw_alpha
,(alpha(data_PRI %>% select(EI9:EI12)))$total$raw_alpha
,(alpha(data_PRI %>% select(EI13:EI16)))$total$raw_alpha
,(alpha(data_PRI %>% select(LN1:LN3)))$total$raw_alpha
,(alpha(data_PRI %>% select(SWB1:SWB5)))$total$raw_alpha)
DKNYP$omega.tot
?omega
#
#
c((alpha(data_JUN %>% select(DB1:DB10)))$total$raw_alpha
,(alpha(data_JUN %>% select(BU1:BU7,BU8:BU9)))$total$raw_alpha
,(alpha(data_JUN %>% select(VoB1:VoB7)))$total$raw_alpha
,(alpha(data_JUN %>% select(AG1:AG3)))$total$raw_alpha
,(alpha(data_JUN %>% select(AG4:AG6)))$total$raw_alpha
,(alpha(data_JUN %>% select(AG7:AG9)))$total$raw_alpha
,(alpha(data_JUN %>% select(AG10:AG12)))$total$raw_alpha
,(alpha(data_JUN %>% select(EI1:EI4)))$total$raw_alpha
,(alpha(data_JUN %>% select(EI5:EI8)))$total$raw_alpha
,(alpha(data_JUN %>% select(EI9:EI12)))$total$raw_alpha
,(alpha(data_JUN %>% select(EI13:EI16)))$total$raw_alpha
,(alpha(data_JUN %>% select(LN1:LN3)))$total$raw_alpha
,(alpha(data_JUN %>% select(SWB1:SWB5)))$total$raw_alpha)
#
#
c((alpha(data_JUN %>% select(DB1:DB10)))$total$raw_alpha
,(alpha(data_JUN %>% select(BU1:BU7,BU8:BU9)))$total$raw_alpha
,(alpha(data_JUN %>% select(VoB1:VoB7)))$total$raw_alpha
,(alpha(data_JUN %>% select(AG1:AG3)))$total$raw_alpha
,(alpha(data_JUN %>% select(AG4:AG6)))$total$raw_alpha
,(alpha(data_JUN %>% select(AG7:AG9)))$total$raw_alpha
,(alpha(data_JUN %>% select(AG10:AG12)))$total$raw_alpha
,(alpha(data_JUN %>% select(EI1:EI4)))$total$raw_alpha
,(alpha(data_JUN %>% select(EI5:EI8)))$total$raw_alpha
,(alpha(data_JUN %>% select(EI9:EI12)))$total$raw_alpha
,(alpha(data_JUN %>% select(EI13:EI16)))$total$raw_alpha
,(alpha(data_JUN %>% select(LN1:LN3)))$total$raw_alpha
,(alpha(data_JUN %>% select(SWB1:SWB5)))$total$raw_alpha)
c(omega(data_JUN %>% select(DB1:DB10))$omega.tot
,omega(data_JUN %>% select(BU1:BU7,BU8:BU9))$omega.tot
,omega(data_JUN %>% select(VoB1:VoB7))$omega.tot
,omega(data_JUN %>% select(AG1:AG3))$omega.tot
,omega(data_JUN %>% select(AG4:AG6))$omega.tot
,omega(data_JUN %>% select(AG7:AG9))$omega.tot
,omega(data_JUN %>% select(AG10:AG12))$omega.tot
,omega(data_JUN %>% select(EI1:EI4))$omega.tot
,omega(data_JUN %>% select(EI5:EI8))$omega.tot
,omega(data_JUN %>% select(EI9:EI12))$omega.tot
,omega(data_JUN %>% select(EI13:EI16))$omega.tot
,omega(data_JUN %>% select(LN1:LN3))$omega.tot
,omega(data_JUN %>% select(SWB1:SWB5))$omega.tot)
warnings()
c(omega(data_JUN %>% select(DB1:DB10), fm = "pa")$omega.tot
,omega(data_JUN %>% select(BU1:BU7,BU8:BU9), fm = "pa")$omega.tot
,omega(data_JUN %>% select(VoB1:VoB7), fm = "pa")$omega.tot
,omega(data_JUN %>% select(AG1:AG3), fm = "pa")$omega.tot
,omega(data_JUN %>% select(AG4:AG6), fm = "pa")$omega.tot
,omega(data_JUN %>% select(AG7:AG9), fm = "pa")$omega.tot
,omega(data_JUN %>% select(AG10:AG12), fm = "pa")$omega.tot
,omega(data_JUN %>% select(EI1:EI4), fm = "pa")$omega.tot
,omega(data_JUN %>% select(EI5:EI8), fm = "pa")$omega.tot
,omega(data_JUN %>% select(EI9:EI12), fm = "pa")$omega.tot
,omega(data_JUN %>% select(EI13:EI16), fm = "pa")$omega.tot
,omega(data_JUN %>% select(LN1:LN3), fm = "pa")$omega.tot
,omega(data_JUN %>% select(SWB1:SWB5), fm = "pa")$omega.tot)
c(omega(data_JUN %>% select(DB1:DB10))$omega.tot
,omega(data_JUN %>% select(BU1:BU7,BU8:BU9))$omega.tot
,omega(data_JUN %>% select(VoB1:VoB7))$omega.tot
,omega(data_JUN %>% select(AG1:AG3))$omega.tot
,omega(data_JUN %>% select(AG4:AG6))$omega.tot
,omega(data_JUN %>% select(AG7:AG9))$omega.tot
,omega(data_JUN %>% select(AG10:AG12))$omega.tot
,omega(data_JUN %>% select(EI1:EI4))$omega.tot
,omega(data_JUN %>% select(EI5:EI8))$omega.tot
,omega(data_JUN %>% select(EI9:EI12))$omega.tot
,omega(data_JUN %>% select(EI13:EI16))$omega.tot
,omega(data_JUN %>% select(LN1:LN3))$omega.tot
,omega(data_JUN %>% select(SWB1:SWB5))$omega.tot)
c((alpha(data_SEN %>% select(DB1:DB10)))$total$raw_alpha
,(alpha(data_SEN %>% select(BU1:BU7,BU8:BU9)))$total$raw_alpha
,(alpha(data_SEN %>% select(VoB1:VoB7)))$total$raw_alpha
,(alpha(data_SEN %>% select(AG1:AG3)))$total$raw_alpha
,(alpha(data_SEN %>% select(AG4:AG6)))$total$raw_alpha
,(alpha(data_SEN %>% select(AG7:AG9)))$total$raw_alpha
,(alpha(data_SEN %>% select(AG10:AG12)))$total$raw_alpha
,(alpha(data_SEN %>% select(EI1:EI4)))$total$raw_alpha
,(alpha(data_SEN %>% select(EI5:EI8)))$total$raw_alpha
,(alpha(data_SEN %>% select(EI9:EI12)))$total$raw_alpha
,(alpha(data_SEN %>% select(EI13:EI16)))$total$raw_alpha
,(alpha(data_SEN %>% select(LN1:LN3)))$total$raw_alpha
,(alpha(data_SEN %>% select(SWB1:SWB5)))$total$raw_alpha)
data_A
data_A[1,]
### Let's check for missing data
library(mice)
### Let's check for missing data
library(mice)
md.pattern(data_A)
library(misty)
install.packages("misty")
library(misty)
na.test(data_A)
colnames(data_A)
na.test(data_A %>% select(AGE:SWB5))
data_A
View(data_A)
### Let's check for missing data
data_A <- data_A %>% mutate(across(FC1_MOST:FC20_LEAST, ~recode(., "A" = 1, "B" = 2, "C" = 3)))
data_B <- data_B %>% mutate(across(FC1_MOST:FC20_LEAST, ~recode(., "A" = 1, "B" = 2, "C" = 3)))
na.test(data_A %>% select(AGE:SWB5))
View(data_A)
na.test(data_A %>% select(AGE:GENDER, FATHER_EDU, SWB5))
na.test(data_A %>% select(AGE:GENDER, FATHER_EDU:SWB5))
na.test(data_A %>% select(AGE:GENDER, FATHER_EDU:DEM_4,BFI1:SWB5))
library(naniar)
library(naniar)
mcar_test(data_A)
mcar_test(data_A %>% select(AGE:GENDER, FATHER_EDU:DEM_4,BFI1:SWB5))
warning()
install.packages("BaylorEdPsych")
mcar_test(data_A %>% select(AGE:GENDER, FATHER_EDU:DEM_4,BFI1:SWB5))
?mcar_test
mcar_test(riskfactors)
colnames(data_B)
mcar_test(data_B %>% select(AGE:GENDER, FATHER_EDU:DEM_4,FC1_MOST:SWB5))
apply(data_A %>% select(GRADE_RECODE, FATHER_EDU, MOTHER_EDU, SLEEP_QLT:SWB5, -(DEM_3:DEM_4)), 2, table)
apply(data_B %>% select(GRADE_RECODE, FATHER_EDU, MOTHER_EDU, SLEEP_QLT:SWB5, -(DEM_3:DEM_4)), 2, table)
data_B_temp <- data_B %>% select(colnames(data_A))
data_00 <- rbind(data_A, data_B_new_temp)
data_00 <- rbind(data_A, data_B_temp)
mcar_test(data_00 %>% select(AGE:GENDER, FATHER_EDU:DEM_4,BFI1:SWB5))
temp <= mcar_test(data_00 %>% select(AGE:GENDER, FATHER_EDU:DEM_4,BFI1:SWB5))
temp <- mcar_test(data_00 %>% select(AGE:GENDER, FATHER_EDU:DEM_4,BFI1:SWB5))
temp$statistic
temp$p.value
install.packages("MissMech")
install.packages("E:/Users/LENOVO/Downloads/MissMech_1.0.2.zip", repos = NULL, type = "win.binary")
library(MissMech)
install.packages("MissMech")
install.packages("E:/Users/LENOVO/Downloads/MissMech_1.0.2.tar.gz", repos = NULL, type = "source")
library(MissMech)
library(MissMech)
?MissMech
temp2 <- TestMCARNormality(data_00 %>% select(AGE:GENDER, FATHER_EDU:DEM_4,BFI1:SWB5), del.lesscases = 1)
data_00 %>% select(AGE:GENDER, FATHER_EDU:DEM_4,BFI1:SWB5)
temp2 <- TestMCARNormality(data.frame(data_00 %>% select(AGE:GENDER, FATHER_EDU:DEM_4,BFI1:SWB5)), del.lesscases = 1)
temp2 <- TestMCARNormality(data.frame(data_00 %>% select(AGE:GENDER, FATHER_EDU:DEM_4,BFI1:SWB5)))
temp2 <- TestMCARNormality(data.frame(data_00 %>% select(BFI1:SWB5)))
# library(misty)
library(naniar)
# na.test(data_A %>% select(AGE:GENDER, FATHER_EDU:DEM_4,BFI1:SWB5))
mcar_test(data_A %>% select(AGE:GENDER, FATHER_EDU:DEM_4,BFI1:SWB5))
mcar_test(data_B %>% select(AGE:GENDER, FATHER_EDU:DEM_4,FC1_MOST:SWB5))
?naniar
temp
temp$statistic
setwd("D:/Anoop Meta-Analysis/ROUND 3 MANUSCRIPT/B5L R&R2 (May 2023)-20230820T064706Z-001/B5L R_R2 (May 2023)/ROUND 4 MANUSCRIPT/SUPPLEMENTARY MATERIAL_1101/Analysis/1. FFM Trait-Leadership Relationships")
library(lavaan)
library(psych)
## FFM intercorrelations from Ones, Viswesvaran, & Reiss (1996) / Ones (1993)
## FFM-EMG correlations re-attenuated from Judge et al., (2002).
## These correlations are calculated in the corresponding Excel file.
cor_FFM_emg_redis <- lav_matrix_lower2full(
c(1,
0.19,	1,
0.16,	0.17,	1,
0.25,	0.17,	0.11,	1,
0.26,	0.00,	-0.06,	0.27,	1,
0.20, 0.26, 0.19, 0.04, 0.26, 1))
colnames(cor_FFM_emg_redis) <-  c("ES", "E", "O", "A", "C", "Emg")
N_FFM_redis_emg <- c(148721,
440440, 294515,
254937, 252004, 47177,
415679, 135529, 144205, 79303,
490296, 683001, 356680, 162975, 288512,
7510*17/35, 9801*23/42, 8025*30/48, 7221*20/37, 11705*37/60)
emg_model <- 'Emg ~ E + A + C + ES + O'
emg_redis_fit <- sem(emg_model, sample.cov = cor_FFM_emg_redis,
sample.nobs = harmonic.mean(N_FFM_redis_emg))  # 17524.01
summary(emg_redis_fit, fit.measures = TRUE, standardized = TRUE, rsquare = TRUE)[[6]]
sqrt(0.17754662)
## FFM intercorrelations from Ones, Viswesvaran, & Reiss (1996) / Ones (1993)
## FFM-EFF correlations re-attenuated from Judge et al., (2002).
## These correlations are calculated in the corresponding Excel file.
cor_FFM_redis <- lav_matrix_lower2full(
c(1,
0.19,	1,
0.16,	0.17,	1,
0.25,	0.17,	0.11,	1,
0.26,	0.00,	-0.06,	0.27,	1,
0.18, 0.20, 0.20, 0.17, 0.13, 1))
cor_FFM_Judge <- lav_matrix_lower2full(
c(1,
0.19,	1,
0.16,	0.17,	1,
0.25,	0.17,	0.11,	1,
0.26,	0.00,	-0.06, 0.27,	1,
0.22, 0.24, 0.24, 0.21, 0.16, 1))
colnames(cor_FFM_redis) <- c("ES", "E", "O", "A", "C", "Eff")
colnames(cor_FFM_Judge) <- c("ES", "E", "O", "A", "C", "Eff")
### As well as weighted N in Judge et al., (2002) weighted by the number of studies (EFF vs EMG)
N_FFM_redis <- c(148721,
440440, 294515,
254937, 252004, 47177,
415679, 135529, 144205, 79303,
490296, 683001, 356680, 162975, 288512,
7510*18/35, 9801*19/42, 8025*18/48, 7221*17/37, 11705*23/60)
redis_model <- 'Eff ~ E + A + C + ES + O'
redis_fit <- sem(redis_model, sample.cov = cor_FFM_redis,
sample.nobs = harmonic.mean(N_FFM_redis))
summary(redis_fit, fit.measures = TRUE, standardized = TRUE, rsquare = TRUE)
